RbacTestController.test9   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 12
Code Lines 10

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 10
dl 0
loc 12
rs 9.9
c 0
b 0
f 0
cc 1
1
import { Controller, Get, UseGuards } from '@nestjs/common';
2
import { RBAcGuard } from '../../../../src/guards/rbac.guard';
3
import { RBAcPermissions, RBAcAnyPermissions } from '../../../../src/decorators/rbac.permissions.decorator';
4
import { AuthGuard } from '../guards/auth.guard';
5
import { RBAC_REQUEST_FILTER } from '../../../../src/constans';
6
7
@Controller()
8
export class RbacTestController {
9
10
  @RBAcPermissions('permission1')
11
  @UseGuards(
12
    AuthGuard,
13
    RBAcGuard,
14
  )
15
  @Get('/admin-permission1')
16
  async test1(): Promise<boolean> {
17
    return true;
18
  }
19
20
  @RBAcPermissions('permission2', 'permission1')
21
  @UseGuards(
22
    AuthGuard,
23
    RBAcGuard,
24
  )
25
  @Get('/admin-permission1-and-permission2')
26
  async test2(): Promise<boolean> {
27
    return true;
28
  }
29
30
  @RBAcPermissions('permission4')
31
  @UseGuards(
32
    AuthGuard,
33
    RBAcGuard,
34
  )
35
  @Get('/admin-permission4')
36
  async test3(): Promise<boolean> {
37
    return true;
38
  }
39
40
  @RBAcPermissions(`permission3@${RBAC_REQUEST_FILTER}`)
41
  @UseGuards(
42
    AuthGuard,
43
    RBAcGuard,
44
  )
45
  @Get('/admin-request-filter')
46
  async test4(): Promise<boolean> {
47
    return true;
48
  }
49
50
  @RBAcPermissions(`permission4`)
51
  @UseGuards(
52
    AuthGuard,
53
    RBAcGuard,
54
  )
55
  @Get('/user-extends-userRoot')
56
  async test5(): Promise<boolean> {
57
    return true;
58
  }
59
60
  @RBAcPermissions(`permission1@create`)
61
  @UseGuards(
62
    AuthGuard,
63
    RBAcGuard,
64
  )
65
  @Get('/user-permission1@create')
66
  async test7(): Promise<boolean> {
67
    return true;
68
  }
69
70
  @RBAcPermissions(`permission1@delete`)
71
  @UseGuards(
72
    AuthGuard,
73
    RBAcGuard,
74
  )
75
  @Get('/user-permission1@delete')
76
  async test8(): Promise<boolean> {
77
    return true;
78
  }
79
80
  @RBAcAnyPermissions(
81
      [`permission1@delete`],
82
      [`permission1@create`]
83
  )
84
  @UseGuards(
85
      AuthGuard,
86
      RBAcGuard,
87
  )
88
  @Get('/user-permission1@deleteOrCreate')
89
  async test9(): Promise<boolean> {
90
    return true;
91
  }
92
93
}
94